package com.jing.PageAdaptation;

import android.app.Application;
import android.content.res.Resources;

import me.jessyan.autosize.AutoSizeCompat;
import me.jessyan.autosize.AutoSizeConfig;
import me.jessyan.autosize.unit.Subunits;

public class MyApp extends Application {
    @Override
    public void onCreate() {
        super.onCreate();

        //开启框架fragment的支持
        AutoSizeConfig.getInstance().setCustomFragment(true);

        /*
            你可以选择pt，in，mm这三个冷门单元中的一个作为子单元，
        这个子单元用来避免修改DisplayMetrics#density带来的不利影响，
        使用这个子单元后，你可以在设计图上写像素大小，你不需要把它转换成dp
         */
        AutoSizeConfig.getInstance()
                .getUnitsManager()
                .setSupportDP(false)
                .setSupportSP(false)
                .setSupportSubunits(Subunits.MM);
    }

    @Override
    public Resources getResources() {
        /*
            在任何情况下本来适配正常的布局突然出现适配失效，适配异常等问题，
        重写 Activity 的 getResources() 方法即可，
        如果是 Dialog、PopupWindow 等控件出现适配失效或适配异常，
        同样在每次 show() 之前调用 AutoSize#autoConvertDensity() 即可。

        链接：https://www.jianshu.com/p/12ce5c0a6163
*看到有一个博主说的，但是我没有遇到过，标注一下*
         */

        //需要升级到 v1.1.2 及以上版本才能使用 AutoSizeCompat
        AutoSizeCompat.autoConvertDensityOfGlobal(super.getResources());//如果没有自定义需求用这个方法
        AutoSizeCompat.autoConvertDensity(super.getResources(),667, false);//如果有自定义需求就用这个方法
        return super.getResources();
    }
}
